Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EQL: multi-value fields support #76610

Merged
merged 4 commits into from
Aug 17, 2021
Merged

EQL: multi-value fields support #76610

merged 4 commits into from
Aug 17, 2021

Conversation

astefan
Copy link
Contributor

@astefan astefan commented Aug 17, 2021

This introduces multi-value fields support in EQL queries:

  • remove in-place optimizations (ranges, binary comparisons, negation logic)
  • functions support for different values of the same field in multi-use scenarios
  • null handling
  • negation handling
  • backwards compatibility
    A specific use-case that this PR doesn't cover: the string function with a boolean parameter used with complex expressions as argument for string. Example: where string(fieldA > 2 and not fieldB < 2 or not concat(host_name, port) == "abc:123") == "true"

The code in this PR is part of a feature branch developed separately and is made of the following previously approved PRs:

astefan and others added 4 commits August 13, 2021 02:09
* Add multi-valued fields support. Part 1
- remove in-place optimizations (ranges, binary comparisons, negation
logic)
- functions support for different values of the same field in multi-use
scenarios
- null handling
- negation handling
…76605)

Adds backwards compatibility checks and tests for multi-value fields support
@elasticmachine elasticmachine added the Team:QL (Deprecated) Meta label for query languages team label Aug 17, 2021
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-ql (Team:QL)

@astefan astefan requested review from Luegg and bpintea August 17, 2021 12:02
Copy link
Contributor

@Luegg Luegg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@astefan astefan merged commit 0c2c93e into master Aug 17, 2021
@astefan astefan deleted the eql_multi_value_fields branch August 17, 2021 12:05
astefan added a commit to astefan/elasticsearch that referenced this pull request Aug 17, 2021
Adds multi-valued fields support:
- remove in-place optimizations (ranges, binary comparisons, negation
logic)
- functions support for different values of the same field in multi-use
scenarios
- null handling
- negation handling
- backwards compatibility checks and tests for multi-value fields support

(cherry picked from commit 0c2c93e)
@astefan astefan changed the title EQL: mulit-value fields support EQL: multi-value fields support Aug 17, 2021
astefan added a commit that referenced this pull request Aug 17, 2021
* EQL: mulit-value fields support (#76610)

Adds multi-valued fields support:
- remove in-place optimizations (ranges, binary comparisons, negation
logic)
- functions support for different values of the same field in multi-use
scenarios
- null handling
- negation handling
- backwards compatibility checks and tests for multi-value fields support

(cherry picked from commit 0c2c93e)
jrodewig added a commit that referenced this pull request Aug 19, 2021
Changes:
* Removes the limitation for multi-value fields.
* Adds a recommendation to avoid complex expressions for Boolean comparisons to the `string` fn.

Relates to #76610.
elasticsearchmachine pushed a commit that referenced this pull request Aug 19, 2021
Changes:
* Removes the limitation for multi-value fields.
* Adds a recommendation to avoid complex expressions for Boolean comparisons to the `string` fn.

Relates to #76610.
# Conflicts:
#	docs/reference/eql/syntax.asciidoc
elasticsearchmachine pushed a commit that referenced this pull request Aug 19, 2021
Changes:
* Removes the limitation for multi-value fields.
* Adds a recommendation to avoid complex expressions for Boolean comparisons to the `string` fn.

Relates to #76610.
# Conflicts:
#	docs/reference/eql/syntax.asciidoc
danhermann pushed a commit to danhermann/elasticsearch that referenced this pull request Aug 19, 2021
Changes:
* Removes the limitation for multi-value fields.
* Adds a recommendation to avoid complex expressions for Boolean comparisons to the `string` fn.

Relates to elastic#76610.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants